/* 字体优化 */
:root {
  /* 主要字体 */
  --font-primary: 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  
  /* 字体大小 */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-xxl: 24px;
  
  /* 字体粗细 */
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* 行高 */
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-loose: 1.8;
}

/* 应用字体到全局 */
body {
  font-family: var(--font-primary);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-normal);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 标题样式 */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-primary);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h1 {
  font-size: var(--font-size-xxl);
}

h2 {
  font-size: var(--font-size-xl);
}

h3 {
  font-size: var(--font-size-lg);
}

h4 {
  font-size: var(--font-size-md);
}

/* 图标增强 */
.el-icon-custom {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 1em;
  height: 1em;
}

/* 图标动效 */
.icon-spin {
  animation: icon-spin 2s infinite linear;
}

@keyframes icon-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}

/* 图标悬停效果 */
.icon-hover {
  transition: transform 0.3s ease, color 0.3s ease;
}

.icon-hover:hover {
  transform: scale(1.2);
  color: var(--primary-color);
}

/* 按钮内图标间距优化 */
.el-button [class^="el-icon-"] {
  margin-right: 5px;
}

/* 表单图标优化 */
.el-input__prefix,
.el-input__suffix {
  display: flex;
  align-items: center;
}

/* 菜单图标优化 */
.el-menu-item [class^="el-icon-"],
.el-submenu__title [class^="el-icon-"] {
  margin-right: 8px;
  font-size: 18px;
  vertical-align: middle;
}

/* 卡片图标优化 */
.el-card__header [class^="el-icon-"] {
  margin-right: 8px;
  color: var(--primary-color);
}

/* 通知图标优化 */
.el-badge__content {
  border: none;
  font-weight: var(--font-weight-medium);
}

/* 下拉菜单图标优化 */
.el-dropdown-menu__item [class^="el-icon-"] {
  margin-right: 8px;
  font-size: 16px;
}